package ar.utn.frba.ia.IA_TP1.mapas;


public class EuroAsia extends Mapa {

	@Override
	protected void fillMatrizAdy() {
		
		// Spain
		matrizAdy[PaisesEA.SPAIN.toInt()][PaisesEA.SPAIN.toInt()]=true;
		matrizAdy[PaisesEA.SPAIN.toInt()][PaisesEA.FRANCE.toInt()]=true;


		// France
		matrizAdy[PaisesEA.FRANCE.toInt()][PaisesEA.FRANCE.toInt()]=true;
		matrizAdy[PaisesEA.FRANCE.toInt()][PaisesEA.SPAIN.toInt()]=true;
		matrizAdy[PaisesEA.FRANCE.toInt()][PaisesEA.GERMANY.toInt()]=true;
		matrizAdy[PaisesEA.FRANCE.toInt()][PaisesEA.ITALY.toInt()]=true;

		// Germany
		matrizAdy[PaisesEA.GERMANY.toInt()][PaisesEA.GERMANY.toInt()]=true;
		matrizAdy[PaisesEA.GERMANY.toInt()][PaisesEA.FRANCE.toInt()]=true;
		matrizAdy[PaisesEA.GERMANY.toInt()][PaisesEA.ITALY.toInt()]=true;
		matrizAdy[PaisesEA.GERMANY.toInt()][PaisesEA.POLAND.toInt()]=true;

		// Italy
		matrizAdy[PaisesEA.ITALY.toInt()][PaisesEA.ITALY.toInt()]=true;
		matrizAdy[PaisesEA.ITALY.toInt()][PaisesEA.FRANCE.toInt()]=true;
		matrizAdy[PaisesEA.ITALY.toInt()][PaisesEA.GERMANY.toInt()]=true;

		// Poland
		matrizAdy[PaisesEA.POLAND.toInt()][PaisesEA.POLAND.toInt()]=true;
		matrizAdy[PaisesEA.POLAND.toInt()][PaisesEA.GERMANY.toInt()]=true;
		matrizAdy[PaisesEA.POLAND.toInt()][PaisesEA.RUSSIA.toInt()]=true;
		matrizAdy[PaisesEA.POLAND.toInt()][PaisesEA.TURKEY.toInt()]=true;

		// Russia
		matrizAdy[PaisesEA.RUSSIA.toInt()][PaisesEA.RUSSIA.toInt()]=true;
		matrizAdy[PaisesEA.RUSSIA.toInt()][PaisesEA.POLAND.toInt()]=true;
		matrizAdy[PaisesEA.RUSSIA.toInt()][PaisesEA.SWEDEN.toInt()]=true;
		matrizAdy[PaisesEA.RUSSIA.toInt()][PaisesEA.ARAL.toInt()]=true;
		matrizAdy[PaisesEA.RUSSIA.toInt()][PaisesEA.IRAN.toInt()]=true;
		matrizAdy[PaisesEA.RUSSIA.toInt()][PaisesEA.TURKEY.toInt()]=true;
		
		// Sweden
		matrizAdy[PaisesEA.SWEDEN.toInt()][PaisesEA.SWEDEN.toInt()]=true;
		matrizAdy[PaisesEA.SWEDEN.toInt()][PaisesEA.RUSSIA.toInt()]=true;

		// Arabia
		matrizAdy[PaisesEA.ARABIA.toInt()][PaisesEA.ARABIA.toInt()]=true;
		matrizAdy[PaisesEA.ARABIA.toInt()][PaisesEA.TURKEY.toInt()]=true;
		matrizAdy[PaisesEA.ARABIA.toInt()][PaisesEA.ISRAEL.toInt()]=true;

		// Aral
		matrizAdy[PaisesEA.ARAL.toInt()][PaisesEA.ARAL.toInt()]=true;
		matrizAdy[PaisesEA.ARAL.toInt()][PaisesEA.TARTARY.toInt()]=true;
		matrizAdy[PaisesEA.ARAL.toInt()][PaisesEA.SIBERIA.toInt()]=true;
		matrizAdy[PaisesEA.ARAL.toInt()][PaisesEA.MONGOLIA.toInt()]=true;
		matrizAdy[PaisesEA.ARAL.toInt()][PaisesEA.IRAN.toInt()]=true;
		matrizAdy[PaisesEA.ARAL.toInt()][PaisesEA.RUSSIA.toInt()]=true;

		// China
		matrizAdy[PaisesEA.CHINA.toInt()][PaisesEA.CHINA.toInt()]=true;
		matrizAdy[PaisesEA.CHINA.toInt()][PaisesEA.MALAYSIA.toInt()]=true;
		matrizAdy[PaisesEA.CHINA.toInt()][PaisesEA.INDIA.toInt()]=true;
		matrizAdy[PaisesEA.CHINA.toInt()][PaisesEA.IRAN.toInt()]=true;
		matrizAdy[PaisesEA.CHINA.toInt()][PaisesEA.GOBI.toInt()]=true;
		matrizAdy[PaisesEA.CHINA.toInt()][PaisesEA.MONGOLIA.toInt()]=true;
		matrizAdy[PaisesEA.CHINA.toInt()][PaisesEA.SIBERIA.toInt()]=true;
		matrizAdy[PaisesEA.CHINA.toInt()][PaisesEA.KAMCHATKA.toInt()]=true;

		// India
		matrizAdy[PaisesEA.INDIA.toInt()][PaisesEA.INDIA.toInt()]=true;
		matrizAdy[PaisesEA.INDIA.toInt()][PaisesEA.IRAN.toInt()]=true;
		matrizAdy[PaisesEA.INDIA.toInt()][PaisesEA.CHINA.toInt()]=true;
		matrizAdy[PaisesEA.INDIA.toInt()][PaisesEA.MALAYSIA.toInt()]=true;
		
		// Iran
		matrizAdy[PaisesEA.IRAN.toInt()][PaisesEA.IRAN.toInt()]=true;
		matrizAdy[PaisesEA.IRAN.toInt()][PaisesEA.TURKEY.toInt()]=true;
		matrizAdy[PaisesEA.IRAN.toInt()][PaisesEA.RUSSIA.toInt()]=true;
		matrizAdy[PaisesEA.IRAN.toInt()][PaisesEA.ARAL.toInt()]=true;
		matrizAdy[PaisesEA.IRAN.toInt()][PaisesEA.MONGOLIA.toInt()]=true;
		matrizAdy[PaisesEA.IRAN.toInt()][PaisesEA.GOBI.toInt()]=true;
		matrizAdy[PaisesEA.IRAN.toInt()][PaisesEA.CHINA.toInt()]=true;
		matrizAdy[PaisesEA.IRAN.toInt()][PaisesEA.INDIA.toInt()]=true;

		// Tartary
		matrizAdy[PaisesEA.TARTARY.toInt()][PaisesEA.TARTARY.toInt()]=true;
		matrizAdy[PaisesEA.TARTARY.toInt()][PaisesEA.TAYMYR.toInt()]=true;
		matrizAdy[PaisesEA.TARTARY.toInt()][PaisesEA.SIBERIA.toInt()]=true;
		matrizAdy[PaisesEA.TARTARY.toInt()][PaisesEA.ARAL.toInt()]=true;
				
		// Taymyr
		matrizAdy[PaisesEA.TAYMYR.toInt()][PaisesEA.TAYMYR.toInt()]=true;
		matrizAdy[PaisesEA.TAYMYR.toInt()][PaisesEA.TARTARY.toInt()]=true;
		matrizAdy[PaisesEA.TAYMYR.toInt()][PaisesEA.SIBERIA.toInt()]=true;

		// Kamchatka
		matrizAdy[PaisesEA.KAMCHATKA.toInt()][PaisesEA.KAMCHATKA.toInt()]=true;
		matrizAdy[PaisesEA.KAMCHATKA.toInt()][PaisesEA.CHINA.toInt()]=true;
		matrizAdy[PaisesEA.KAMCHATKA.toInt()][PaisesEA.SIBERIA.toInt()]=true;

		// Siberia
		matrizAdy[PaisesEA.SIBERIA.toInt()][PaisesEA.SIBERIA.toInt()]=true;
		matrizAdy[PaisesEA.SIBERIA.toInt()][PaisesEA.ARAL.toInt()]=true;
		matrizAdy[PaisesEA.SIBERIA.toInt()][PaisesEA.TARTARY.toInt()]=true;
		matrizAdy[PaisesEA.SIBERIA.toInt()][PaisesEA.TAYMYR.toInt()]=true;
		matrizAdy[PaisesEA.SIBERIA.toInt()][PaisesEA.KAMCHATKA.toInt()]=true;
		matrizAdy[PaisesEA.SIBERIA.toInt()][PaisesEA.CHINA.toInt()]=true;
		matrizAdy[PaisesEA.SIBERIA.toInt()][PaisesEA.MONGOLIA.toInt()]=true;

		// Mongolia
		matrizAdy[PaisesEA.MONGOLIA.toInt()][PaisesEA.MONGOLIA.toInt()]=true;
		matrizAdy[PaisesEA.MONGOLIA.toInt()][PaisesEA.IRAN.toInt()]=true;
		matrizAdy[PaisesEA.MONGOLIA.toInt()][PaisesEA.ARAL.toInt()]=true;
		matrizAdy[PaisesEA.MONGOLIA.toInt()][PaisesEA.SIBERIA.toInt()]=true;
		matrizAdy[PaisesEA.MONGOLIA.toInt()][PaisesEA.CHINA.toInt()]=true;
		matrizAdy[PaisesEA.MONGOLIA.toInt()][PaisesEA.GOBI.toInt()]=true;

		// Gobi
		matrizAdy[PaisesEA.GOBI.toInt()][PaisesEA.GOBI.toInt()]=true;
		matrizAdy[PaisesEA.GOBI.toInt()][PaisesEA.IRAN.toInt()]=true;
		matrizAdy[PaisesEA.GOBI.toInt()][PaisesEA.MONGOLIA.toInt()]=true;
		matrizAdy[PaisesEA.GOBI.toInt()][PaisesEA.CHINA.toInt()]=true;

		// Malaysia
		matrizAdy[PaisesEA.MALAYSIA.toInt()][PaisesEA.MALAYSIA.toInt()]=true;
		matrizAdy[PaisesEA.MALAYSIA.toInt()][PaisesEA.CHINA.toInt()]=true;
		matrizAdy[PaisesEA.MALAYSIA.toInt()][PaisesEA.INDIA.toInt()]=true;

		// Turkey
		matrizAdy[PaisesEA.TURKEY.toInt()][PaisesEA.TURKEY.toInt()]=true;
		matrizAdy[PaisesEA.TURKEY.toInt()][PaisesEA.POLAND.toInt()]=true;
		matrizAdy[PaisesEA.TURKEY.toInt()][PaisesEA.RUSSIA.toInt()]=true;
		matrizAdy[PaisesEA.TURKEY.toInt()][PaisesEA.IRAN.toInt()]=true;
		matrizAdy[PaisesEA.TURKEY.toInt()][PaisesEA.ARABIA.toInt()]=true;
		matrizAdy[PaisesEA.TURKEY.toInt()][PaisesEA.ISRAEL.toInt()]=true;
		
		// Israel
		matrizAdy[PaisesEA.ISRAEL.toInt()][PaisesEA.ISRAEL.toInt()]=true;
		matrizAdy[PaisesEA.ISRAEL.toInt()][PaisesEA.TURKEY.toInt()]=true;
		matrizAdy[PaisesEA.ISRAEL.toInt()][PaisesEA.ARABIA.toInt()]=true;
		
	}

	@Override
	protected void fillPaises() {

		paises.add(new Pais(15, "Spain", 52, 51));
		paises.add(new Pais(16, "France", 56, 45));
		paises.add(new Pais(17, "Germany", 63, 42));
		paises.add(new Pais(18, "Italy", 63, 52));
		paises.add(new Pais(19, "Poland", 68, 41));
		paises.add(new Pais(20, "Russia", 68, 29));
		paises.add(new Pais(21, "Sweden", 60, 21));
		paises.add(new Pais(22, "Arabia", 79, 52));
		paises.add(new Pais(23, "Aral", 72, 19));
		paises.add(new Pais(24, "China", 89, 33));
		paises.add(new Pais(25, "India", 87, 49));
		paises.add(new Pais(26, "Iran", 78, 35));
		paises.add(new Pais(27, "Tartary", 75, 14));
		paises.add(new Pais(28, "Taymyr", 79, 15));
		paises.add(new Pais(29, "Kamchatka", 85, 15));
		paises.add(new Pais(30, "Siberia", 79, 21));
		paises.add(new Pais(31, "Mongolia", 80, 27));
		paises.add(new Pais(32, "Gobi", 82, 35));
		paises.add(new Pais(33, "Malaysia", 93, 44));
		paises.add(new Pais(34, "Turkey", 75, 44));
		paises.add(new Pais(35, "Israel", 74, 50));
		
	}
	
	public enum PaisesEA{
		SPAIN(0),
		FRANCE(1),
		GERMANY(2),
		ITALY(3),
		POLAND(4),
		RUSSIA(5),
		SWEDEN(6),
		ARABIA(7),
		ARAL(8),
		CHINA(9),
		INDIA(10),
		IRAN(11),
		TARTARY(12),
		TAYMYR(13),
		KAMCHATKA(14),
		SIBERIA(15),
		MONGOLIA(16),
		GOBI(17),
		MALAYSIA(18),
		TURKEY(19),
		ISRAEL(20);
		
		private int numero;
		
		private PaisesEA(int n){
			numero = n;
		}
		
		public int toInt(){
			return numero;
		}

	}

}
